/*import { createStore } from 'vuex'
import { createApp } from 'vue'
import menus from "./modules/menus";

export default createStore({
  state: {
    token: ''
  },
  mutations: {
    SET_TOKEN: (state,token) => {
      state.token = token
      localStorage.setItem("token",token)
    }
  },
  actions: {
  },
  modules: {
    menus
  }
})*/


// 这里跟vue2有点区别，vue2中是直接导入vue，然后通过vue.use(xxx)
import { createStore } from 'vuex'
import menus from "./modules/menus"

/*这里的引入子模块语法好像变了，这个看了注释说能加载所有modules的，那就将就使用吧...，不知道写的是什么*/
/*引入好像把4个属性变成了4个子模块了？然后整体引入？不懂，将就用2的用法*/
// 因为我把模块拆分了，但是我又不想每次都导入，就通过这个自动导入modules目录下的模块
const modulesFiles = require.context('./modules', true, /\.js$/);
const modules = modulesFiles.keys().reduce((modules, modulePath) => {
  const moduleName = modulePath.replace(/^\.\/(.*)\.\w+$/, '$1')
  const value = modulesFiles(modulePath)
  modules[moduleName] = value.default
  return modules
}, {})

export default createStore({

    modules

})
